The present invention relates to information systems, and more specifically, to an approach for performing administrative functions in information systems.
Information systems, and in particular database systems, routinely perform a variety of administrative functions to maintain their orderliness and efficiency. Examples of administrative functions include creating and updating data structures and indexes, backing up and archiving data and collecting statistical information about stored data. An administrative function includes a set of one or more administrative steps. The steps are an ordered sequence of tasks which are performed to complete the administrative function. Administrative functions such as these are sometimes collectively referred to as xe2x80x9chousekeepingxe2x80x9d functions.
Performing administrative functions consumes system resources and time which can interfere with other processing. This problem is exacerbated in information systems containing large amounts of data, e.g. warehousing systems and large database systems, since the amount of system resources and time attributable to performing administrative functions, such as updating indexes and gathering statistical information, usually increases as the amount of data increases.
Administrative functions are often performed during scheduled system xe2x80x9cdown timesxe2x80x9d or during times of minimal user activity to reduce interference with online user processing. However, administrative functions that are initiated during down times cannot always be completed during the allocated time period. When administrative functions cannot be completed during the allocated time period, either the administrative functions must be allowed to continue until they have completed, or be prematurely terminated. Allowing administrative functions to continue beyond scheduled down times can interfere with other time critical processing. On the other hand, prematurely terminating administrative functions can be problematic because administrative functions traditionally cannot be stopped and restarted at a later time since the data that the administrative functions operated on may change before the next scheduled down time. As a result, prematurely terminated administrative functions must be completely re-executed at a later time.
Another approach for performing administrative functions is for a system operator (SYSOP) to manually select a particular set of administrative steps of the function to be performed during an allocated time period. Whether administrative functions can be completed within scheduled down times depends upon the ability of the SYSOP to select particular administrative steps of the function that can be completed during the allocated time period. Since it can be difficult to predict the amount of time that is required to perform a particular administrative step, it can be difficult for the SYSOP to estimate the amount of time that will be required to complete a set of administrative steps.
Sometimes a SYSOP underestimates the amount of time that will be required to perform a particular administrative function and the particular administrative function must be prematurely terminated and completely re-executed at another scheduled down time. Other times a SYSOP overestimates the amount of time that will be required to perform a particular administrative function and the particular administrative function is completed earlier than expected, resulting in unused down time. One solution to this problem is for a SYSOP to manually break down an administrative function into steps and partially complete the steps within the allocated time period. However, this can require a large amount of labor and still relies upon the judgment of the SYSOP to complete tasks within the allocated time period.
Based on the need to perform administrative functions in information systems and the limitations in the prior approaches, an approach for efficiently performing administrative functions in information systems during scheduled down times is highly desirable.